A network service provider is an enterprise that supplies some service to users over a computer network. For instance, an Internet Service Provider (ISP) supplies residential or business subscribers with access to the Internet. Service providers often use service level agreements (SLAs) to establish terms of service by which the provider and user of the service are obligated to comply. For example, an ISP and a user might agree that the user will pay a certain amount of money at the beginning of each month in exchange for a fixed number of gigabytes transferred. Policing compliance of agreements between the service provider and the user can be difficult. To enforce the agreements, the service provider needs the capability to monitor the behavior of the user and to take action when the user violates a term of the agreement.
Currently, service providers have little flexibility in their ability to enforce compliance with terms of service. Systems now available provide basic functions, such as the ability to charge accounts in response to usage or by time. Such systems generally operate by collecting and processing long log files. Tailoring such systems to meet the actual business goals of the particular service provider generates significant delay and expense.